class CssLang
	attr_reader :initial_state, :version, :states, :keywords
	attr_writer :initial_state
	
	def initialize
		@version = '1.12'
		@initial_state ='OUT'
			@states = Dictionary.new
				@states["OUT"] = Array.new
					@states["OUT"][0] = Dictionary.new
						@states["OUT"][0]["_COUNTAB"] = Array.new
						@states["OUT"][0]["_COUNTAB"][0] = "OUT"
						@states["OUT"][0]["_COUNTAB"][1] = 0

						@states["OUT"][0]["{"] = Array.new
						@states["OUT"][0]["{"][0] = "DEF"
						@states["OUT"][0]["{"][1] = 0

						@states["OUT"][0]["."] = Array.new
						@states["OUT"][0]["."][0] = "CLASS"
						@states["OUT"][0]["."][1] = 0

						@states["OUT"][0]["ALPHA"] = Array.new
						@states["OUT"][0]["ALPHA"][0] = "TAG"
						@states["OUT"][0]["ALPHA"][1] = 0

						@states["OUT"][0][":"] = Array.new
						@states["OUT"][0][":"][0] = "KEYWORD"
						@states["OUT"][0][":"][1] = 1

						@states["OUT"][0]["/*"] = Array.new
						@states["OUT"][0]["/*"][0] = "COMMENT"
						@states["OUT"][0]["/*"][1] = 0

						@states["OUT"][0]["</"] = Array.new
						@states["OUT"][0]["</"][0] = "_QUIT"
						@states["OUT"][0]["</"][1] = 0

						@states["OUT"][0]["<?php"] = Array.new
						@states["OUT"][0]["<?php"][0] = "TO_PHP"
						@states["OUT"][0]["<?php"][1] = 0

						@states["OUT"][0]["<?"] = Array.new
						@states["OUT"][0]["<?"][0] = "TO_PHP"
						@states["OUT"][0]["<?"][1] = 0


				@states["OUT"][1] = 0
				@states["OUT"][2] = nil
				@states["OUT"][3] = nil

				@states["TAG"] = Array.new
					@states["TAG"][0] = Dictionary.new
						@states["TAG"][0]["!ALNUM"] = Array.new
						@states["TAG"][0]["!ALNUM"][0] = "_RET"
						@states["TAG"][0]["!ALNUM"][1] = 0

						@states["TAG"][0]["/*"] = Array.new
						@states["TAG"][0]["/*"][0] = "COMMENT"
						@states["TAG"][0]["/*"][1] = 0


				@states["TAG"][1] = 4
				@states["TAG"][2] = "css-tag"
				@states["TAG"][3] = nil

				@states["KEYWORD"] = Array.new
					@states["KEYWORD"][0] = Dictionary.new
						@states["KEYWORD"][0]["!ALPHA"] = Array.new
						@states["KEYWORD"][0]["!ALPHA"][0] = "_RET"
						@states["KEYWORD"][0]["!ALPHA"][1] = 0

						@states["KEYWORD"][0]["SPACE"] = Array.new
						@states["KEYWORD"][0]["SPACE"][0] = "_RET"
						@states["KEYWORD"][0]["SPACE"][1] = 1


				@states["KEYWORD"][1] = 5
				@states["KEYWORD"][2] = "css-out"
				@states["KEYWORD"][3] = nil

				@states["CLASS"] = Array.new
					@states["CLASS"][0] = Dictionary.new
						@states["CLASS"][0]["SPACE"] = Array.new
						@states["CLASS"][0]["SPACE"][0] = "_RET"
						@states["CLASS"][0]["SPACE"][1] = 1

						@states["CLASS"][0]["/*"] = Array.new
						@states["CLASS"][0]["/*"][0] = "COMMENT"
						@states["CLASS"][0]["/*"][1] = 0

						@states["CLASS"][0]["{"] = Array.new
						@states["CLASS"][0]["{"][0] = "_RET"
						@states["CLASS"][0]["{"][1] = 1


				@states["CLASS"][1] = 4
				@states["CLASS"][2] = "css-class"
				@states["CLASS"][3] = nil

				@states["DEF"] = Array.new
					@states["DEF"][0] = Dictionary.new
						@states["DEF"][0][":"] = Array.new
						@states["DEF"][0][":"][0] = "VALUE"
						@states["DEF"][0][":"][1] = 1

						@states["DEF"][0]["_COUNTAB"] = Array.new
						@states["DEF"][0]["_COUNTAB"][0] = "DEF"
						@states["DEF"][0]["_COUNTAB"][1] = 0

						@states["DEF"][0][";"] = Array.new
						@states["DEF"][0][";"][0] = "DEF"
						@states["DEF"][0][";"][1] = 1

						@states["DEF"][0]["/*"] = Array.new
						@states["DEF"][0]["/*"][0] = "COMMENT"
						@states["DEF"][0]["/*"][1] = 0

						@states["DEF"][0]["}"] = Array.new
						@states["DEF"][0]["}"][0] = "_RET"
						@states["DEF"][0]["}"][1] = 0

						@states["DEF"][0]["!SPACE"] = Array.new
						@states["DEF"][0]["!SPACE"][0] = "PROPERTY"
						@states["DEF"][0]["!SPACE"][1] = 0


				@states["DEF"][1] = 4
				@states["DEF"][2] = nil
				@states["DEF"][3] = nil

				@states["PROPERTY"] = Array.new
					@states["PROPERTY"][0] = Dictionary.new
						@states["PROPERTY"][0]["_COUNTAB"] = Array.new
						@states["PROPERTY"][0]["_COUNTAB"][0] = "PROPERTY"
						@states["PROPERTY"][0]["_COUNTAB"][1] = 0

						@states["PROPERTY"][0]["/*"] = Array.new
						@states["PROPERTY"][0]["/*"][0] = "COMMENT"
						@states["PROPERTY"][0]["/*"][1] = 0

						@states["PROPERTY"][0][":"] = Array.new
						@states["PROPERTY"][0][":"][0] = "_RET"
						@states["PROPERTY"][0][":"][1] = 1

						@states["PROPERTY"][0]["}"] = Array.new
						@states["PROPERTY"][0]["}"][0] = "_RET"
						@states["PROPERTY"][0]["}"][1] = 1


				@states["PROPERTY"][1] = 4
				@states["PROPERTY"][2] = "css-property"
				@states["PROPERTY"][3] = nil

				@states["VALUE"] = Array.new
					@states["VALUE"][0] = Dictionary.new
						@states["VALUE"][0][";"] = Array.new
						@states["VALUE"][0][";"][0] = "_RET"
						@states["VALUE"][0][";"][1] = 1

						@states["VALUE"][0]["#"] = Array.new
						@states["VALUE"][0]["#"][0] = "COLOR"
						@states["VALUE"][0]["#"][1] = 0

						@states["VALUE"][0]["}"] = Array.new
						@states["VALUE"][0]["}"][0] = "_RET"
						@states["VALUE"][0]["}"][1] = 1

						@states["VALUE"][0]["_COUNTAB"] = Array.new
						@states["VALUE"][0]["_COUNTAB"][0] = "VALUE"
						@states["VALUE"][0]["_COUNTAB"][1] = 0

						@states["VALUE"][0]["/*"] = Array.new
						@states["VALUE"][0]["/*"][0] = "COMMENT"
						@states["VALUE"][0]["/*"][1] = 0


				@states["VALUE"][1] = 4
				@states["VALUE"][2] = "css-value"
				@states["VALUE"][3] = nil

				@states["COLOR"] = Array.new
					@states["COLOR"][0] = Dictionary.new
						@states["COLOR"][0]["!HEXNUM"] = Array.new
						@states["COLOR"][0]["!HEXNUM"][0] = "_RET"
						@states["COLOR"][0]["!HEXNUM"][1] = 1


				@states["COLOR"][1] = 4
				@states["COLOR"][2] = "css-color"
				@states["COLOR"][3] = nil

				@states["COMMENT"] = Array.new
					@states["COMMENT"][0] = Dictionary.new
						@states["COMMENT"][0]["_COUNTAB"] = Array.new
						@states["COMMENT"][0]["_COUNTAB"][0] = "COMMENT"
						@states["COMMENT"][0]["_COUNTAB"][1] = 0

						@states["COMMENT"][0]["*/"] = Array.new
						@states["COMMENT"][0]["*/"][0] = "_RET"
						@states["COMMENT"][0]["*/"][1] = 0


				@states["COMMENT"][1] = 4
				@states["COMMENT"][2] = "css-comment"
				@states["COMMENT"][3] = nil

				@states["TO_PHP"] = Array.new
				@states["TO_PHP"][0] = nil
				@states["TO_PHP"][1] = 8
				@states["TO_PHP"][2] = "xlang"
				@states["TO_PHP"][3] = "PHP"

				@states["_QUIT"] = Array.new
				@states["_QUIT"][0] = nil
				@states["_QUIT"][1] = 8
				@states["_QUIT"][2] = "html-tag"
				@states["_QUIT"][3] = nil


			@keywords = Array.new
			@keywords[0] = "css-keywords"
				@keywords[1] = Dictionary.new
				@keywords[1][":active"] = 1
				@keywords[1][":hover"] = 1


	end
end